package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 短视频解析日志对象 video_parse_log
 * 
 * @author ruoyi
 * @date 2025-01-15
 */
public class VideoParseLog extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 日志ID */
    private Long logId;

    /** 小程序标识 */
    @Excel(name = "小程序标识")
    private String miniprogramId;

    /** 用户标识 */
    @Excel(name = "用户标识")
    private String userId;

    /** 用户IP */
    @Excel(name = "用户IP")
    private String userIp;

    /** 解析平台 */
    @Excel(name = "解析平台")
    private String platform;

    /** 原始链接 */
    @Excel(name = "原始链接")
    private String originalUrl;

    /** 解析后的链接 */
    @Excel(name = "解析后的链接")
    private String parsedUrl;

    /** 视频标题 */
    @Excel(name = "视频标题")
    private String videoTitle;

    /** 视频作者 */
    @Excel(name = "视频作者")
    private String videoAuthor;

    /** 视频作者ID */
    @Excel(name = "视频作者ID")
    private String videoAuthorId;

    /** 视频封面 */
    @Excel(name = "视频封面")
    private String videoCover;

    /** 视频时长(秒) */
    @Excel(name = "视频时长(秒)")
    private Long videoDuration;

    /** 视频大小(字节) */
    @Excel(name = "视频大小(字节)")
    private Long videoSize;

    /** 解析状态 */
    @Excel(name = "解析状态", readConverterExp = "0=成功,1=失败")
    private Integer parseStatus;

    /** 错误信息 */
    @Excel(name = "错误信息")
    private String errorMessage;

    /** 解析耗时(毫秒) */
    @Excel(name = "解析耗时(毫秒)")
    private Long parseTime;

    /** 解析时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "解析时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date parseDate;

    /** 请求头信息 */
    @Excel(name = "请求头信息")
    private String requestHeaders;

    /** 用户代理 */
    @Excel(name = "用户代理")
    private String userAgent;

    public void setLogId(Long logId) 
    {
        this.logId = logId;
    }

    public Long getLogId() 
    {
        return logId;
    }
    public void setMiniprogramId(String miniprogramId) 
    {
        this.miniprogramId = miniprogramId;
    }

    public String getMiniprogramId() 
    {
        return miniprogramId;
    }
    public void setUserId(String userId) 
    {
        this.userId = userId;
    }

    public String getUserId() 
    {
        return userId;
    }
    public void setUserIp(String userIp) 
    {
        this.userIp = userIp;
    }

    public String getUserIp() 
    {
        return userIp;
    }
    public void setPlatform(String platform) 
    {
        this.platform = platform;
    }

    public String getPlatform() 
    {
        return platform;
    }
    public void setOriginalUrl(String originalUrl) 
    {
        this.originalUrl = originalUrl;
    }

    public String getOriginalUrl() 
    {
        return originalUrl;
    }
    public void setParsedUrl(String parsedUrl) 
    {
        this.parsedUrl = parsedUrl;
    }

    public String getParsedUrl() 
    {
        return parsedUrl;
    }
    public void setVideoTitle(String videoTitle) 
    {
        this.videoTitle = videoTitle;
    }

    public String getVideoTitle() 
    {
        return videoTitle;
    }
    public void setVideoAuthor(String videoAuthor) 
    {
        this.videoAuthor = videoAuthor;
    }

    public String getVideoAuthor() 
    {
        return videoAuthor;
    }
    public void setVideoAuthorId(String videoAuthorId) 
    {
        this.videoAuthorId = videoAuthorId;
    }

    public String getVideoAuthorId() 
    {
        return videoAuthorId;
    }
    public void setVideoCover(String videoCover) 
    {
        this.videoCover = videoCover;
    }

    public String getVideoCover() 
    {
        return videoCover;
    }
    public void setVideoDuration(Long videoDuration) 
    {
        this.videoDuration = videoDuration;
    }

    public Long getVideoDuration() 
    {
        return videoDuration;
    }
    public void setVideoSize(Long videoSize) 
    {
        this.videoSize = videoSize;
    }

    public Long getVideoSize() 
    {
        return videoSize;
    }
    public void setParseStatus(Integer parseStatus) 
    {
        this.parseStatus = parseStatus;
    }

    public Integer getParseStatus() 
    {
        return parseStatus;
    }
    public void setErrorMessage(String errorMessage) 
    {
        this.errorMessage = errorMessage;
    }

    public String getErrorMessage() 
    {
        return errorMessage;
    }
    public void setParseTime(Long parseTime) 
    {
        this.parseTime = parseTime;
    }

    public Long getParseTime() 
    {
        return parseTime;
    }
    public void setParseDate(Date parseDate) 
    {
        this.parseDate = parseDate;
    }

    public Date getParseDate() 
    {
        return parseDate;
    }
    public void setRequestHeaders(String requestHeaders) 
    {
        this.requestHeaders = requestHeaders;
    }

    public String getRequestHeaders() 
    {
        return requestHeaders;
    }
    public void setUserAgent(String userAgent) 
    {
        this.userAgent = userAgent;
    }

    public String getUserAgent() 
    {
        return userAgent;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("logId", getLogId())
            .append("miniprogramId", getMiniprogramId())
            .append("userId", getUserId())
            .append("userIp", getUserIp())
            .append("platform", getPlatform())
            .append("originalUrl", getOriginalUrl())
            .append("parsedUrl", getParsedUrl())
            .append("videoTitle", getVideoTitle())
            .append("videoAuthor", getVideoAuthor())
            .append("videoAuthorId", getVideoAuthorId())
            .append("videoCover", getVideoCover())
            .append("videoDuration", getVideoDuration())
            .append("videoSize", getVideoSize())
            .append("parseStatus", getParseStatus())
            .append("errorMessage", getErrorMessage())
            .append("parseTime", getParseTime())
            .append("parseDate", getParseDate())
            .append("requestHeaders", getRequestHeaders())
            .append("userAgent", getUserAgent())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
